package com.lv.suyiyong.hfr.adapter

import android.view.LayoutInflater
import android.view.View
import android.widget.TextView
import com.alibaba.android.arouter.launcher.ARouter
import com.chad.library.adapter.base.BaseQuickAdapter
import com.lv.common.base.DataBindBaseViewHolder
import com.lv.common.imp.OnPositionTListener
import com.lv.common.ktx.LoadSrc
import com.lv.common.ktx.applyGrayScale
import com.lv.common.ktx.priceSmallDot
import com.lv.common.ktx.setBname
import com.lv.common.ktx.setTextTag
import com.lv.common.utils.ARoutUtils
import com.lv.common.utils.Constants
import com.lv.common.utils.MoneyUtil
import com.lv.service.bean.GoodsItemBean
import com.lv.service.bean.SpuItemBean
import com.lv.service.room.company.CompanyItemBean
import com.lv.suyiyong.hfr.R
import com.lv.suyiyong.hfr.databinding.ItemFactoryBinding
import com.lv.suyiyong.hfr.databinding.ItemGoodsBinding


/**
 * 作者： ygx
 * 创建日期：2022/6/24 8:10 PM
 * 签名： 天行健，君子以自强不息；地势坤，君子以厚德载物。
 *      _              _           _     _   ____  _             _ _
 *     / \   _ __   __| |_ __ ___ (_) __| | / ___|| |_ _   _  __| (_) ___
 *    / _ \ | '_ \ / _` | '__/ _ \| |/ _` | \___ \| __| | | |/ _` | |/ _ \
 *   / ___ \| | | | (_| | | | (_) | | (_| |  ___) | |_| |_| | (_| | | (_) |
 *  /_/   \_\_| |_|\__,_|_|  \___/|_|\__,_| |____/ \__|\__,_|\__,_|_|\___/
 *
 * You never know what you can do until you try !
 * ----------------------------------------------------------------
 *
 */
class GoodsAdapter(
    private val datas: MutableList<GoodsItemBean>,
) :
    BaseQuickAdapter<GoodsItemBean, DataBindBaseViewHolder>
        (R.layout.item_goods, datas) {

    override fun convert(holder: DataBindBaseViewHolder, item: GoodsItemBean) {
        val mBinding: ItemGoodsBinding =
            holder.getBind() as ItemGoodsBinding
//        mBinding.itemRoot = item
//        //防止列表闪烁
        mBinding.executePendingBindings()
        val layoutPosition = holder.layoutPosition
        mBinding.ivTag.LoadSrc(Constants.GOLD_TAG_SMALL)
        mBinding.ivImg.LoadSrc(item.image)

        val labs = item.label
        //只有金牌店铺显示，其它不显示
        mBinding.ivTag.visibility = if (!labs.isNullOrEmpty()) View.VISIBLE else View.GONE
        val benefit = item.benefit
        if (benefit == "1") {
            mBinding.tvGoodsName.setTextTag(R.drawable.icon_hui_tag, item.name ?: "")
        } else {
            mBinding.tvGoodsName.text = item.name
        }
        mBinding.tvCpname.text = item.cpname
        mBinding.tvWant.text = "${item.wantnum ?: 0}人想要"
        val price = item.price
        val priceStr = MoneyUtil.moneydiv("$price", "100").priceSmallDot()
        if (priceStr == "0") {
            mBinding.tvUnit.visibility = View.GONE
            mBinding.tvPrice.text = "面议"
        } else {
            mBinding.tvUnit.visibility = View.VISIBLE
            mBinding.tvPrice.text = priceStr
        }

        mBinding.clContainer.setOnClickListener {
            ARouter.getInstance().build(ARoutUtils.GoodsDetilsActivity).withString("spuid", item.id)
                .navigation()
            onViewClickListener?.onClick(layoutPosition, item)
        }

    }

    var onViewClickListener: OnPositionTListener<GoodsItemBean>? = null


}